#!/bin/bash

persoFilter() {
  # Autorisation acces SSH
  addToChain TCP_INPUT_ALLOWED   RETURN --protocol tcp --source      jardinux               --dport  22
  addToChain TCP_OUTPUT_ALLOWED  RETURN --protocol tcp --destination jardinux               --sport  22

  addToChain TCP_INPUT_ALLOWED   RETURN --protocol tcp --source      petunia                --dport  22
  addToChain TCP_OUTPUT_ALLOWED  RETURN --protocol tcp --destination petunia                --sport  22

# addToChain TCP_INPUT_ALLOWED   RETURN --protocol tcp                                      --dport 443
# addToChain TCP_OUTPUT_ALLOWED  RETURN --protocol tcp                                      --sport 443

  addToChain TCP_INPUT_ALLOWED   RETURN --protocol tcp --source      csgproxy               --dport 443
  addToChain TCP_OUTPUT_ALLOWED  RETURN --protocol tcp --destination csgproxy               --sport 443

# addToChain TCP_INPUT_ALLOWED   RETURN --protocol tcp --source      csgproxy2              --dport 443
# addToChain TCP_OUTPUT_ALLOWED  RETURN --protocol tcp --destination csgproxy2              --sport 443

# addToChain TCP_INPUT_ALLOWED   RETURN --protocol tcp --source      csgproxy3              --dport 443
# addToChain TCP_OUTPUT_ALLOWED  RETURN --protocol tcp --destination csgproxy3              --sport 443

  addToChain TCP_INPUT_ALLOWED   RETURN --protocol tcp --source      edfproxy_clavipncp2n25 --dport 443
  addToChain TCP_OUTPUT_ALLOWED  RETURN --protocol tcp --destination edfproxy_clavipncp2n25 --sport 443

  addToChain TCP_INPUT_ALLOWED   RETURN --protocol tcp --source      edfproxy_clavipncp2n26 --dport 443
  addToChain TCP_OUTPUT_ALLOWED  RETURN --protocol tcp --destination edfproxy_clavipncp2n26 --sport 443

  addToChain TCP_INPUT_ALLOWED   RETURN --protocol tcp --source      edfproxy_clavipncp2n27 --dport 443
  addToChain TCP_OUTPUT_ALLOWED  RETURN --protocol tcp --destination edfproxy_clavipncp2n27 --sport 443

  addToChain TCP_INPUT_ALLOWED   RETURN --protocol tcp --source      edfproxy_pcyvipncp2n20 --dport 443
  addToChain TCP_OUTPUT_ALLOWED  RETURN --protocol tcp --destination edfproxy_pcyvipncp2n20 --sport 443

  addToChain TCP_INPUT_ALLOWED   RETURN --protocol tcp --source      edfproxy_pcyvipncp2n21 --dport 443
  addToChain TCP_OUTPUT_ALLOWED  RETURN --protocol tcp --destination edfproxy_pcyvipncp2n21 --sport 443

  addToChain TCP_INPUT_ALLOWED   RETURN --protocol tcp --source      edfproxy_pcyvipncp2n22 --dport 443
  addToChain TCP_OUTPUT_ALLOWED  RETURN --protocol tcp --destination edfproxy_pcyvipncp2n22 --sport 443


  # Autorisation DNS Numericable
  addToChain UDP_INPUT_ALLOWED   RETURN --protocol udp --source      89.2.0.1 --sport 53
  addToChain UDP_OUTPUT_ALLOWED  RETURN --protocol udp --destination 89.2.0.1 --dport 53
  addToChain UDP_INPUT_ALLOWED   RETURN --protocol udp --source      89.2.0.2 --sport 53
  addToChain UDP_OUTPUT_ALLOWED  RETURN --protocol udp --destination 89.2.0.2 --dport 53

  # Autoriser les requetes Whois
  addToChain TCP_OUTPUT_ALLOWED  RETURN --protocol tcp --dport  43
  # Autoriser les requetes HTTP
  addToChain TCP_OUTPUT_ALLOWED  RETURN --protocol tcp --dport  80
  # Autoriser les requetes HTTPS
  addToChain TCP_OUTPUT_ALLOWED  RETURN --protocol tcp --dport 443

  # Autoriser les requetes HTTPS chez Google
# addToChain TCP_OUTPUT_ALLOWED  RETURN --protocol tcp --destination 209.85.0.0/16  --dport 443
  # Autoriser les connexions SSH chez GitHub
  addToChain TCP_OUTPUT_ALLOWED  RETURN --protocol tcp --destination 207.97.227.239 --dport  22

  # Suppression immediate des tentatives des Windows environnants (pour eviter pollution des logs)
  addToChain UDP_INPUT_ALLOWED  DROP    --protocol udp --source 192.168.22.202 --sport  68 --destination 255.255.255.255 --dport  67
  addToChain UDP_INPUT_ALLOWED  DROP    --protocol udp --source 192.168.22.202 --sport 137 --destination 192.168.22.255  --dport 137
  addToChain UDP_INPUT_ALLOWED  DROP    --protocol udp --source 192.168.22.202 --sport 138 --destination 192.168.22.255  --dport 138
}

